home *** CD-ROM | disk | FTP | other *** search
/ Inter.Net 55-1 / Inter.Net 55-1.iso / CBuilder / Setup / BCB / data.z / extctrls.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-09  |  21.8 KB  |  676 lines

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1998 by Borland International
  3. // All rights reserved
  4.  
  5. // (DO NOT EDIT: machine generated header) 'ExtCtrls.pas' rev: 3.00
  6.  
  7. #ifndef ExtCtrlsHPP
  8. #define ExtCtrlsHPP
  9. #include <StdCtrls.hpp>
  10. #include <Graphics.hpp>
  11. #include <Menus.hpp>
  12. #include <Forms.hpp>
  13. #include <Controls.hpp>
  14. #include <Classes.hpp>
  15. #include <SysUtils.hpp>
  16. #include <Windows.hpp>
  17. #include <Messages.hpp>
  18. #include <SysInit.hpp>
  19. #include <System.hpp>
  20.  
  21. //-- user supplied -----------------------------------------------------------
  22.  
  23. namespace Extctrls
  24. {
  25. //-- type declarations -------------------------------------------------------
  26. enum TShapeType { stRectangle, stSquare, stRoundRect, stRoundSquare, stEllipse, stCircle };
  27.  
  28. class DELPHICLASS TShape;
  29. class PASCALIMPLEMENTATION TShape : public Controls::TGraphicControl 
  30. {
  31.     typedef Controls::TGraphicControl inherited;
  32.     
  33. private:
  34.     Graphics::TPen* FPen;
  35.     Graphics::TBrush* FBrush;
  36.     TShapeType FShape;
  37.     void __fastcall SetBrush(Graphics::TBrush* Value);
  38.     void __fastcall SetPen(Graphics::TPen* Value);
  39.     void __fastcall SetShape(TShapeType Value);
  40.     
  41. protected:
  42.     virtual void __fastcall Paint(void);
  43.     
  44. public:
  45.     __fastcall virtual TShape(Classes::TComponent* AOwner);
  46.     __fastcall virtual ~TShape(void);
  47.     
  48. __published:
  49.     void __fastcall StyleChanged(System::TObject* Sender);
  50.     __property Align ;
  51.     __property Graphics::TBrush* Brush = {read=FBrush, write=SetBrush};
  52.     __property DragCursor ;
  53.     __property DragMode ;
  54.     __property Enabled ;
  55.     __property ParentShowHint ;
  56.     __property Graphics::TPen* Pen = {read=FPen, write=SetPen};
  57.     __property TShapeType Shape = {read=FShape, write=SetShape, default=0};
  58.     __property ShowHint ;
  59.     __property Visible ;
  60.     __property OnDragDrop ;
  61.     __property OnDragOver ;
  62.     __property OnEndDrag ;
  63.     __property OnMouseDown ;
  64.     __property OnMouseMove ;
  65.     __property OnMouseUp ;
  66.     __property OnStartDrag ;
  67. };
  68.  
  69. class DELPHICLASS TPaintBox;
  70. class PASCALIMPLEMENTATION TPaintBox : public Controls::TGraphicControl 
  71. {
  72.     typedef Controls::TGraphicControl inherited;
  73.     
  74. private:
  75.     Classes::TNotifyEvent FOnPaint;
  76.     
  77. protected:
  78.     virtual void __fastcall Paint(void);
  79.     
  80. public:
  81.     __fastcall virtual TPaintBox(Classes::TComponent* AOwner);
  82.     __property Canvas ;
  83.     
  84. __published:
  85.     __property Align ;
  86.     __property Color ;
  87.     __property DragCursor ;
  88.     __property DragMode ;
  89.     __property Enabled ;
  90.     __property Font ;
  91.     __property ParentColor ;
  92.     __property ParentFont ;
  93.     __property ParentShowHint ;
  94.     __property PopupMenu ;
  95.     __property ShowHint ;
  96.     __property Visible ;
  97.     __property OnClick ;
  98.     __property OnDblClick ;
  99.     __property OnDragDrop ;
  100.     __property OnDragOver ;
  101.     __property OnEndDrag ;
  102.     __property OnMouseDown ;
  103.     __property OnMouseMove ;
  104.     __property OnMouseUp ;
  105.     __property Classes::TNotifyEvent OnPaint = {read=FOnPaint, write=FOnPaint};
  106.     __property OnStartDrag ;
  107. public:
  108.     /* TGraphicControl.Destroy */ __fastcall virtual ~TPaintBox(void) { }
  109.     
  110. };
  111.  
  112. class DELPHICLASS TImage;
  113. class PASCALIMPLEMENTATION TImage : public Controls::TGraphicControl 
  114. {
  115.     typedef Controls::TGraphicControl inherited;
  116.     
  117. private:
  118.     Graphics::TPicture* FPicture;
  119.     Graphics::TProgressEvent FOnProgress;
  120.     bool FAutoSize;
  121.     bool FStretch;
  122.     bool FCenter;
  123.     bool FIncrementalDisplay;
  124.     bool FTransparent;
  125.     bool FDrawing;
  126.     Graphics::TCanvas* __fastcall GetCanvas(void);
  127.     void __fastcall PictureChanged(System::TObject* Sender);
  128.     void __fastcall SetAutoSize(bool Value);
  129.     void __fastcall SetCenter(bool Value);
  130.     void __fastcall SetPicture(Graphics::TPicture* Value);
  131.     void __fastcall SetStretch(bool Value);
  132.     void __fastcall SetTransparent(bool Value);
  133.     
  134. protected:
  135.     Windows::TRect __fastcall DestRect(void);
  136.     bool __fastcall DoPaletteChange(void);
  137.     DYNAMIC HPALETTE __fastcall GetPalette(void);
  138.     virtual void __fastcall Paint(void);
  139.     DYNAMIC void __fastcall Progress(System::TObject* Sender, Graphics::TProgressStage Stage, Byte PercentDone
  140.         , bool RedrawNow, const Windows::TRect &R, const System::AnsiString Msg);
  141.     
  142. public:
  143.     __fastcall virtual TImage(Classes::TComponent* AOwner);
  144.     __fastcall virtual ~TImage(void);
  145.     __property Graphics::TCanvas* Canvas = {read=GetCanvas};
  146.     
  147. __published:
  148.     __property Align ;
  149.     __property bool AutoSize = {read=FAutoSize, write=SetAutoSize, default=0};
  150.     __property bool Center = {read=FCenter, write=SetCenter, default=0};
  151.     __property DragCursor ;
  152.     __property DragMode ;
  153.     __property Enabled ;
  154.     __property bool IncrementalDisplay = {read=FIncrementalDisplay, write=FIncrementalDisplay, default=0
  155.         };
  156.     __property ParentShowHint ;
  157.     __property Graphics::TPicture* Picture = {read=FPicture, write=SetPicture};
  158.     __property PopupMenu ;
  159.     __property ShowHint ;
  160.     __property bool Stretch = {read=FStretch, write=SetStretch, default=0};
  161.     __property bool Transparent = {read=FTransparent, write=SetTransparent, default=0};
  162.     __property Visible ;
  163.     __property OnClick ;
  164.     __property OnDblClick ;
  165.     __property OnDragDrop ;
  166.     __property OnDragOver ;
  167.     __property OnEndDrag ;
  168.     __property OnMouseDown ;
  169.     __property OnMouseMove ;
  170.     __property OnMouseUp ;
  171.     __property Graphics::TProgressEvent OnProgress = {read=FOnProgress, write=FOnProgress};
  172.     __property OnStartDrag ;
  173. };
  174.  
  175. enum TBevelStyle { bsLowered, bsRaised };
  176.  
  177. enum TBevelShape { bsBox, bsFrame, bsTopLine, bsBottomLine, bsLeftLine, bsRightLine };
  178.  
  179. class DELPHICLASS TBevel;
  180. class PASCALIMPLEMENTATION TBevel : public Controls::TGraphicControl 
  181. {
  182.     typedef Controls::TGraphicControl inherited;
  183.     
  184. private:
  185.     TBevelStyle FStyle;
  186.     TBevelShape FShape;
  187.     void __fastcall SetStyle(TBevelStyle Value);
  188.     void __fastcall SetShape(TBevelShape Value);
  189.     
  190. protected:
  191.     virtual void __fastcall Paint(void);
  192.     
  193. public:
  194.     __fastcall virtual TBevel(Classes::TComponent* AOwner);
  195.     
  196. __published:
  197.     __property Align ;
  198.     __property ParentShowHint ;
  199.     __property TBevelShape Shape = {read=FShape, write=SetShape, default=0};
  200.     __property ShowHint ;
  201.     __property TBevelStyle Style = {read=FStyle, write=SetStyle, default=0};
  202.     __property Visible ;
  203. public:
  204.     /* TGraphicControl.Destroy */ __fastcall virtual ~TBevel(void) { }
  205.     
  206. };
  207.  
  208. class DELPHICLASS TTimer;
  209. class PASCALIMPLEMENTATION TTimer : public Classes::TComponent 
  210. {
  211.     typedef Classes::TComponent inherited;
  212.     
  213. private:
  214.     Cardinal FInterval;
  215.     HWND FWindowHandle;
  216.     Classes::TNotifyEvent FOnTimer;
  217.     bool FEnabled;
  218.     void __fastcall UpdateTimer(void);
  219.     void __fastcall SetEnabled(bool Value);
  220.     void __fastcall SetInterval(Cardinal Value);
  221.     void __fastcall SetOnTimer(Classes::TNotifyEvent Value);
  222.     void __fastcall WndProc(Messages::TMessage &Msg);
  223.     
  224. protected:
  225.     DYNAMIC void __fastcall Timer(void);
  226.     
  227. public:
  228.     __fastcall virtual TTimer(Classes::TComponent* AOwner);
  229.     __fastcall virtual ~TTimer(void);
  230.     
  231. __published:
  232.     __property bool Enabled = {read=FEnabled, write=SetEnabled, default=1};
  233.     __property Cardinal Interval = {read=FInterval, write=SetInterval, default=1000};
  234.     __property Classes::TNotifyEvent OnTimer = {read=FOnTimer, write=SetOnTimer};
  235. };
  236.  
  237. enum TPanelBevel { bvNone, bvLowered, bvRaised };
  238.  
  239. typedef int TBevelWidth;
  240.  
  241. typedef int TBorderWidth;
  242.  
  243. class DELPHICLASS TCustomPanel;
  244. class PASCALIMPLEMENTATION TCustomPanel : public Controls::TCustomControl 
  245. {
  246.     typedef Controls::TCustomControl inherited;
  247.     
  248. private:
  249.     TPanelBevel FBevelInner;
  250.     TPanelBevel FBevelOuter;
  251.     TBevelWidth FBevelWidth;
  252.     TBorderWidth FBorderWidth;
  253.     TFormBorderStyle FBorderStyle;
  254.     bool FFullRepaint;
  255.     bool FLocked;
  256.     Classes::TNotifyEvent FOnResize;
  257.     TAlignment FAlignment;
  258.     MESSAGE void __fastcall CMTextChanged(Messages::TMessage &Message);
  259.     HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
  260.     MESSAGE void __fastcall CMIsToolControl(Messages::TMessage &Message);
  261.     HIDESBASE MESSAGE void __fastcall WMWindowPosChanged(Messages::TWMWindowPosMsg &Message);
  262.     void __fastcall SetAlignment(Classes::TAlignment Value);
  263.     void __fastcall SetBevelInner(TPanelBevel Value);
  264.     void __fastcall SetBevelOuter(TPanelBevel Value);
  265.     void __fastcall SetBevelWidth(TBevelWidth Value);
  266.     void __fastcall SetBorderWidth(TBorderWidth Value);
  267.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  268.     
  269. protected:
  270.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  271.     virtual void __fastcall AlignControls(Controls::TControl* AControl, Windows::TRect &Rect);
  272.     virtual void __fastcall Paint(void);
  273.     DYNAMIC void __fastcall Resize(void);
  274.     __property Classes::TAlignment Alignment = {read=FAlignment, write=SetAlignment, default=2};
  275.     __property TPanelBevel BevelInner = {read=FBevelInner, write=SetBevelInner, default=0};
  276.     __property TPanelBevel BevelOuter = {read=FBevelOuter, write=SetBevelOuter, default=2};
  277.     __property TBevelWidth BevelWidth = {read=FBevelWidth, write=SetBevelWidth, default=1};
  278.     __property TBorderWidth BorderWidth = {read=FBorderWidth, write=SetBorderWidth, default=0};
  279.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=0};
  280.     __property Color ;
  281.     __property bool FullRepaint = {read=FFullRepaint, write=FFullRepaint, default=1};
  282.     __property bool Locked = {read=FLocked, write=FLocked, default=0};
  283.     __property ParentColor ;
  284.     __property Classes::TNotifyEvent OnResize = {read=FOnResize, write=FOnResize};
  285.     
  286. public:
  287.     __fastcall virtual TCustomPanel(Classes::TComponent* AOwner);
  288. public:
  289.     /* TCustomControl.Destroy */ __fastcall virtual ~TCustomPanel(void) { }
  290.     
  291. public:
  292.     /* TWinControl.CreateParented */ __fastcall TCustomPanel(HWND ParentWindow) : Controls::TCustomControl(
  293.         ParentWindow) { }
  294.     
  295. };
  296.  
  297. class DELPHICLASS TPanel;
  298. class PASCALIMPLEMENTATION TPanel : public Extctrls::TCustomPanel 
  299. {
  300.     typedef Extctrls::TCustomPanel inherited;
  301.     
  302. __published:
  303.     __property Align ;
  304.     __property Alignment ;
  305.     __property BevelInner ;
  306.     __property BevelOuter ;
  307.     __property BevelWidth ;
  308.     __property BorderWidth ;
  309.     __property BorderStyle ;
  310.     __property DragCursor ;
  311.     __property DragMode ;
  312.     __property Enabled ;
  313.     __property FullRepaint ;
  314.     __property Caption ;
  315.     __property Color ;
  316.     __property Ctl3D ;
  317.     __property Font ;
  318.     __property Locked ;
  319.     __property ParentColor ;
  320.     __property ParentCtl3D ;
  321.     __property ParentFont ;
  322.     __property ParentShowHint ;
  323.     __property PopupMenu ;
  324.     __property ShowHint ;
  325.     __property TabOrder ;
  326.     __property TabStop ;
  327.     __property Visible ;
  328.     __property OnClick ;
  329.     __property OnDblClick ;
  330.     __property OnDragDrop ;
  331.     __property OnDragOver ;
  332.     __property OnEndDrag ;
  333.     __property OnEnter ;
  334.     __property OnExit ;
  335.     __property OnMouseDown ;
  336.     __property OnMouseMove ;
  337.     __property OnMouseUp ;
  338.     __property OnResize ;
  339.     __property OnStartDrag ;
  340. public:
  341.     /* TCustomPanel.Create */ __fastcall virtual TPanel(Classes::TComponent* AOwner) : Extctrls::TCustomPanel(
  342.         AOwner) { }
  343.     
  344. public:
  345.     /* TCustomControl.Destroy */ __fastcall virtual ~TPanel(void) { }
  346.     
  347. public:
  348.     /* TWinControl.CreateParented */ __fastcall TPanel(HWND ParentWindow) : Extctrls::TCustomPanel(ParentWindow
  349.         ) { }
  350.     
  351. };
  352.  
  353. class DELPHICLASS TPage;
  354. class PASCALIMPLEMENTATION TPage : public Controls::TCustomControl 
  355. {
  356.     typedef Controls::TCustomControl inherited;
  357.     
  358. private:
  359.     HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TWMNCHitTest &Message);
  360.     
  361. protected:
  362.     virtual void __fastcall ReadState(Classes::TReader* Reader);
  363.     virtual void __fastcall Paint(void);
  364.     
  365. public:
  366.     __fastcall virtual TPage(Classes::TComponent* AOwner);
  367.     
  368. __published:
  369.     __property Caption ;
  370.     __property Height  = {stored=false};
  371.     __property TabOrder  = {stored=false, default=-1};
  372.     __property Visible  = {stored=false, default=1};
  373.     __property Width  = {stored=false};
  374. public:
  375.     /* TCustomControl.Destroy */ __fastcall virtual ~TPage(void) { }
  376.     
  377. public:
  378.     /* TWinControl.CreateParented */ __fastcall TPage(HWND ParentWindow) : Controls::TCustomControl(ParentWindow
  379.         ) { }
  380.     
  381. };
  382.  
  383. class DELPHICLASS TNotebook;
  384. class PASCALIMPLEMENTATION TNotebook : public Controls::TCustomControl 
  385. {
  386.     typedef Controls::TCustomControl inherited;
  387.     
  388. private:
  389.     Classes::TList* FPageList;
  390.     Classes::TStrings* FAccess;
  391.     int FPageIndex;
  392.     Classes::TNotifyEvent FOnPageChanged;
  393.     void __fastcall SetPages(Classes::TStrings* Value);
  394.     void __fastcall SetActivePage(const System::AnsiString Value);
  395.     System::AnsiString __fastcall GetActivePage(void);
  396.     void __fastcall SetPageIndex(int Value);
  397.     
  398. protected:
  399.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  400.     DYNAMIC Classes::TComponent* __fastcall GetChildOwner(void);
  401.     DYNAMIC void __fastcall GetChildren(Classes::TGetChildProc Proc, Classes::TComponent* Root);
  402.     virtual void __fastcall ReadState(Classes::TReader* Reader);
  403.     virtual void __fastcall ShowControl(Controls::TControl* AControl);
  404.     
  405. public:
  406.     __fastcall virtual TNotebook(Classes::TComponent* AOwner);
  407.     __fastcall virtual ~TNotebook(void);
  408.     
  409. __published:
  410.     __property System::AnsiString ActivePage = {read=GetActivePage, write=SetActivePage, stored=false};
  411.         
  412.     __property Align ;
  413.     __property Color ;
  414.     __property Ctl3D ;
  415.     __property DragCursor ;
  416.     __property DragMode ;
  417.     __property Font ;
  418.     __property Enabled ;
  419.     __property int PageIndex = {read=FPageIndex, write=SetPageIndex, default=0};
  420.     __property Classes::TStrings* Pages = {read=FAccess, write=SetPages, stored=false};
  421.     __property ParentColor ;
  422.     __property ParentCtl3D ;
  423.     __property ParentFont ;
  424.     __property ParentShowHint ;
  425.     __property PopupMenu ;
  426.     __property ShowHint ;
  427.     __property TabOrder ;
  428.     __property TabStop ;
  429.     __property Visible ;
  430.     __property OnClick ;
  431.     __property OnDblClick ;
  432.     __property OnDragDrop ;
  433.     __property OnDragOver ;
  434.     __property OnEndDrag ;
  435.     __property OnEnter ;
  436.     __property OnExit ;
  437.     __property OnMouseDown ;
  438.     __property OnMouseMove ;
  439.     __property OnMouseUp ;
  440.     __property Classes::TNotifyEvent OnPageChanged = {read=FOnPageChanged, write=FOnPageChanged};
  441.     __property OnStartDrag ;
  442. public:
  443.     /* TWinControl.CreateParented */ __fastcall TNotebook(HWND ParentWindow) : Controls::TCustomControl(
  444.         ParentWindow) { }
  445.     
  446. };
  447.  
  448. typedef void __fastcall (__closure *TSectionEvent)(System::TObject* Sender, int ASection, int AWidth
  449.     );
  450.  
  451. class DELPHICLASS THeader;
  452. class PASCALIMPLEMENTATION THeader : public Controls::TCustomControl 
  453. {
  454.     typedef Controls::TCustomControl inherited;
  455.     
  456. private:
  457.     Classes::TStrings* FSections;
  458.     tagPOINT FHitTest;
  459.     bool FCanResize;
  460.     bool FAllowResize;
  461.     TFormBorderStyle FBorderStyle;
  462.     int FResizeSection;
  463.     int FMouseOffset;
  464.     TSectionEvent FOnSizing;
  465.     TSectionEvent FOnSized;
  466.     void __fastcall SetBorderStyle(Forms::TBorderStyle Value);
  467.     void __fastcall FreeSections(void);
  468.     void __fastcall SetSections(Classes::TStrings* Strings);
  469.     int __fastcall GetWidth(int X);
  470.     HIDESBASE void __fastcall SetWidth(int X, int Value);
  471.     HIDESBASE MESSAGE void __fastcall WMSetCursor(Messages::TWMSetCursor &Msg);
  472.     HIDESBASE MESSAGE void __fastcall WMNCHitTest(Messages::TWMNCHitTest &Msg);
  473.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Msg);
  474.     DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, 
  475.         int Y);
  476.     DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
  477.     DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int 
  478.         Y);
  479.     
  480. protected:
  481.     virtual void __fastcall Paint(void);
  482.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  483.     DYNAMIC void __fastcall Sizing(int ASection, int AWidth);
  484.     DYNAMIC void __fastcall Sized(int ASection, int AWidth);
  485.     
  486. public:
  487.     __fastcall virtual THeader(Classes::TComponent* AOwner);
  488.     __fastcall virtual ~THeader(void);
  489.     __property int SectionWidth[int X] = {read=GetWidth, write=SetWidth};
  490.     
  491. __published:
  492.     __property Align ;
  493.     __property bool AllowResize = {read=FAllowResize, write=FAllowResize, default=1};
  494.     __property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=1};
  495.     __property Enabled ;
  496.     __property Font ;
  497.     __property ParentFont ;
  498.     __property ParentShowHint ;
  499.     __property PopupMenu ;
  500.     __property Classes::TStrings* Sections = {read=FSections, write=SetSections};
  501.     __property ShowHint ;
  502.     __property TabOrder ;
  503.     __property TabStop ;
  504.     __property Visible ;
  505.     __property TSectionEvent OnSizing = {read=FOnSizing, write=FOnSizing};
  506.     __property TSectionEvent OnSized = {read=FOnSized, write=FOnSized};
  507. public:
  508.     /* TWinControl.CreateParented */ __fastcall THeader(HWND ParentWindow) : Controls::TCustomControl(ParentWindow
  509.         ) { }
  510.     
  511. };
  512.  
  513. class DELPHICLASS TCustomRadioGroup;
  514. class PASCALIMPLEMENTATION TCustomRadioGroup : public Stdctrls::TCustomGroupBox 
  515. {
  516.     typedef Stdctrls::TCustomGroupBox inherited;
  517.     
  518. private:
  519.     Classes::TList* FButtons;
  520.     Classes::TStrings* FItems;
  521.     int FItemIndex;
  522.     int FColumns;
  523.     bool FReading;
  524.     bool FUpdating;
  525.     void __fastcall ArrangeButtons(void);
  526.     void __fastcall ButtonClick(System::TObject* Sender);
  527.     void __fastcall ItemsChange(System::TObject* Sender);
  528.     void __fastcall SetButtonCount(int Value);
  529.     void __fastcall SetColumns(int Value);
  530.     void __fastcall SetItemIndex(int Value);
  531.     void __fastcall SetItems(Classes::TStrings* Value);
  532.     void __fastcall UpdateButtons(void);
  533.     HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
  534.     HIDESBASE MESSAGE void __fastcall CMFontChanged(Messages::TMessage &Message);
  535.     HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
  536.     
  537. protected:
  538.     virtual void __fastcall ReadState(Classes::TReader* Reader);
  539.     virtual bool __fastcall CanModify(void);
  540.     DYNAMIC void __fastcall GetChildren(Classes::TGetChildProc Proc, Classes::TComponent* Root);
  541.     __property int Columns = {read=FColumns, write=SetColumns, default=1};
  542.     __property int ItemIndex = {read=FItemIndex, write=SetItemIndex, default=-1};
  543.     __property Classes::TStrings* Items = {read=FItems, write=SetItems};
  544.     
  545. public:
  546.     __fastcall virtual TCustomRadioGroup(Classes::TComponent* AOwner);
  547.     __fastcall virtual ~TCustomRadioGroup(void);
  548. public:
  549.     /* TWinControl.CreateParented */ __fastcall TCustomRadioGroup(HWND ParentWindow) : Stdctrls::TCustomGroupBox(
  550.         ParentWindow) { }
  551.     
  552. };
  553.  
  554. class DELPHICLASS TRadioGroup;
  555. class PASCALIMPLEMENTATION TRadioGroup : public Extctrls::TCustomRadioGroup 
  556. {
  557.     typedef Extctrls::TCustomRadioGroup inherited;
  558.     
  559. __published:
  560.     __property Align ;
  561.     __property Caption ;
  562.     __property Color ;
  563.     __property Columns ;
  564.     __property Ctl3D ;
  565.     __property DragCursor ;
  566.     __property DragMode ;
  567.     __property Enabled ;
  568.     __property Font ;
  569.     __property ItemIndex ;
  570.     __property Items ;
  571.     __property ParentColor ;
  572.     __property ParentCtl3D ;
  573.     __property ParentFont ;
  574.     __property ParentShowHint ;
  575.     __property PopupMenu ;
  576.     __property ShowHint ;
  577.     __property TabOrder ;
  578.     __property TabStop ;
  579.     __property Visible ;
  580.     __property OnClick ;
  581.     __property OnDragDrop ;
  582.     __property OnDragOver ;
  583.     __property OnEndDrag ;
  584.     __property OnEnter ;
  585.     __property OnExit ;
  586.     __property OnStartDrag ;
  587. public:
  588.     /* TCustomRadioGroup.Create */ __fastcall virtual TRadioGroup(Classes::TComponent* AOwner) : Extctrls::
  589.         TCustomRadioGroup(AOwner) { }
  590.     /* TCustomRadioGroup.Destroy */ __fastcall virtual ~TRadioGroup(void) { }
  591.     
  592. public:
  593.     /* TWinControl.CreateParented */ __fastcall TRadioGroup(HWND ParentWindow) : Extctrls::TCustomRadioGroup(
  594.         ParentWindow) { }
  595.     
  596. };
  597.  
  598. typedef int NaturalNumber;
  599.  
  600. typedef void __fastcall (__closure *TCanResizeEvent)(System::TObject* Sender, int &NewSize, bool &Accept
  601.     );
  602.  
  603. enum TResizeStyle { rsNone, rsLine, rsUpdate };
  604.  
  605. class DELPHICLASS TSplitter;
  606. class PASCALIMPLEMENTATION TSplitter : public Controls::TGraphicControl 
  607. {
  608.     typedef Controls::TGraphicControl inherited;
  609.     
  610. private:
  611.     HDC FLineDC;
  612.     tagPOINT FDownPos;
  613.     int FSplit;
  614.     NaturalNumber FMinSize;
  615.     int FMaxSize;
  616.     TResizeStyle FResizeStyle;
  617.     Controls::TControl* FControl;
  618.     int FNewSize;
  619.     int FOldSize;
  620.     Controls::TWinControl* FActiveControl;
  621.     Controls::TKeyEvent FOldKeyDown;
  622.     bool FBeveled;
  623.     bool FLineVisible;
  624.     TCanResizeEvent FOnCanResize;
  625.     Classes::TNotifyEvent FOnMoved;
  626.     Classes::TNotifyEvent FOnPaint;
  627.     void __fastcall AllocateLineDC(void);
  628.     void __fastcall DrawLine(void);
  629.     void __fastcall ReleaseLineDC(void);
  630.     void __fastcall UpdateControlSize(void);
  631.     void __fastcall CalcSplitSize(int X, int Y, int &NewSize, int &Split);
  632.     void __fastcall UpdateSize(int X, int Y);
  633.     void __fastcall FocusKeyDown(System::TObject* Sender, Word &Key, Classes::TShiftState Shift);
  634.     void __fastcall SetBeveled(bool Value);
  635.     
  636. protected:
  637.     DYNAMIC void __fastcall RequestAlign(void);
  638.     virtual bool __fastcall CanResize(int &NewSize);
  639.     virtual void __fastcall Paint(void);
  640.     DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, 
  641.         int Y);
  642.     DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
  643.     DYNAMIC void __fastcall MouseUp(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int 
  644.         Y);
  645.     DYNAMIC void __fastcall StopSizing(void);
  646.     
  647. public:
  648.     __fastcall virtual TSplitter(Classes::TComponent* AOwner);
  649.     
  650. __published:
  651.     __property Align ;
  652.     __property TResizeStyle ResizeStyle = {read=FResizeStyle, write=FResizeStyle, default=1};
  653.     __property bool Beveled = {read=FBeveled, write=SetBeveled, default=1};
  654.     __property Color ;
  655.     __property NaturalNumber MinSize = {read=FMinSize, write=FMinSize, default=30};
  656.     __property ParentColor ;
  657.     __property Visible ;
  658.     __property TCanResizeEvent OnCanResize = {read=FOnCanResize, write=FOnCanResize};
  659.     __property Classes::TNotifyEvent OnMoved = {read=FOnMoved, write=FOnMoved};
  660.     __property Classes::TNotifyEvent OnPaint = {read=FOnPaint, write=FOnPaint};
  661. public:
  662.     /* TGraphicControl.Destroy */ __fastcall virtual ~TSplitter(void) { }
  663.     
  664. };
  665.  
  666. //-- var, const, procedure ---------------------------------------------------
  667. extern PACKAGE void __fastcall Frame3D(Graphics::TCanvas* Canvas, Windows::TRect &Rect, Graphics::TColor 
  668.     TopColor, Graphics::TColor BottomColor, int Width);
  669.  
  670. }    /* namespace Extctrls */
  671. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  672. using namespace Extctrls;
  673. #endif
  674. //-- end unit ----------------------------------------------------------------
  675. #endif    // ExtCtrls
  676.